package com.afdor.rws.event.driven.channel.consumer.handler;

import com.afdor.rws.event.driven.entities.Event;
import lombok.NonNull;

/**
 * 事件类型处理策略定义
 *
 * @author 悭梵
 * @date Created in 2018-08-05 17:34
 */
public interface EventHandler<R> {
    /**
     * 处理事件，需在此方法维护事件处理状态，事件系统不维护事件状态扭转
     *
     * @param event
     * @return
     */
    R handler(@NonNull Event event);

}
